13. Without Pre-trained Weights

Using Keras Applications models without pre-trained weights

So far, you've seen the effectiveness of models pre-trained on ImageNet weights, but what if we specify weights=None when we load a model? Well, you'll instead be randomly initializing the weights, as if you had built a model on your own and were starting from scratch.

From our chart before, there are few situations where this might even be a potential use case - basically, when you have data that is very different from the original data. However, given the large size of the ImageNet dataset (remember, it's over 14 million images from 1,000 classes!), it's highly unlikely this is really the case - it will almost always make the most sense to start with ImageNet pre-trained weights, and only fine-tune from there

Four Use Cases of Transfer Learning

Four Use Cases of Transfer Learning

Below, let's check out what happens when we try to use a pre-made model but set the weights to None - this means no training has occurred yet!

Workspace

This section contains either a workspace (it can be a Jupyter Notebook workspace or an online code editor work space, etc.) and it cannot be automatically downloaded to be generated here. Please access the classroom with your account and manually download the workspace to your local machine. Note that for some courses, Udacity upload the workspace files onto https://github.com/udacity , so you may be able to download them there.

Workspace Information:

  • Default file path:
  • Workspace type: jupyter
  • Opened files (when workspace is loaded): n/a

In the following lab, you'll get a chance to actually add layers to the end of a pre-trained model, so that you can actually use the full power of transfer learning, instead of just using it toward the 1,000 ImageNet classes as a whole.